package day1.problem2;

import java.util.*;

//两个数组的交集
//https://www.nowcoder.com/practice/56ea71d1f4e94de2aaec10e985874cce?tpId=196&tqId=40269&ru=/exam/oj

public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     * 
     * @param nums1 int整型ArrayList 
     * @param nums2 int整型ArrayList 
     * @return int整型ArrayList
     */
    public ArrayList<Integer> intersection (ArrayList<Integer> nums1, ArrayList<Integer> nums2) {
        // write code here
        ArrayList<Integer> list = new ArrayList<>();
        int[] hash1 = new int[1005];
        int[] hash2 = new int[1005];
        for(int x : nums1) {
            hash1[x]++;
        }
        for(int x : nums2) {
            if(hash1[x] > 0 && hash2[x] == 0) {
                list.add(x);
                hash2[x] = 1;
            }
        }
        return list;
    }
}